The present invention relates to a spindle positioning apparatus for positioning the spindle of a machine tool with a high degree of accuracy while simplifying the structure of a speed reducer or the like associated with a spindle mechanism and facilitating complex machining operations.
Spindle controlling apparatus for machine tools are implemented by a highly sophisticated control system that has been achieved in recent years by the technical advance of computerized control. However, the prior spindle controlling apparatus suffer from disadvantages when positioning the spindle highly accurately at high speed in order to increase the machining efficiency.
FIG. 1 of the accompanying drawings illustrates in block form a conventional spindle positioning apparatus for use in a machine tool. A speed command A1 is applied to a contact X1 of a changeover switch 2 and delivered via a common contact X0 thereof to a speed command processor 4. The speed command processor 4 then effects an arithmetic operation to control the speed indicated by the applied speed command, and produces a torque command B1 as a result of the arithmetic operation. The torque command B1 is fed to a vector control processor 6 in which a vector arithmetic operation, a slip arithmetic operation, phase conversion, and the like are carried out for substantially controlling a spindle motor 10. The vector control processor 6 produces three-phase signals C1 through C3, which are applied to a three-phase PWM current control amplifier 8 that amplifies the power of the three-phase signals C1 through C3. The amplified signals C1 through C3 are then delivered as a driving current D1 to the spindle motor 10. The spindle motor 10 is coaxially coupled to a pulse generator 12 which generates a pulse train QM dependent on the rotational speed of the spindle motor 10.
The speed of rotation of the spindle motor 10 is reduced by a gear train (not shown) housed in a gear box 14 for rotating a spindle 16. The spindle 16 is coupled through a gear 18 to a position coder 20 that produces a position signal QF dependent on the rotational speed of the spindle 16. The pulse train QM from the pulse generator 12 is converted by a phase detector 22 to a phase signal QMP supplied to the vector control processor 6. The position signal QF, which is in the form of a pulse train, is applied to and converted by a position detector 26 to positional data QFP that is fed to both a zero settig circuit 28 and a subtractor 30. When the zero point for the positional data signal QFP is set, i.e., when the original position of the position coder 20 is confirmed, the zero setting circuit 28 supplies a reset signal to a flip-flop 32 coupled to the output terminal of the zero setting circuit 28.
The flip-flop 32 is supplied with a spindle positioning command S1 which is also applied to the changeover switch 2. In response to the spindle positioning command S1, the changeover switch 2 connects the common contact X0 to a contact X2, and the flip-flop 32 applies a set output SS to a changeover switch 34. Then, a common contact Y0 is connected to a contact Y1 in the changeover switch 34 to allow a low-speed command signal L1 to be applied via the changeover switches 34, 2 to the speed control processor 4. The subtracter 30 finds the difference between a position command signal PC1 and the positional data signal QFP, and applies a differential signal to a control amplifier 36 which effects a PI (proportional plus integral) control process to produce a speed command signal A0. The speed command signal A0 is then applied to a contact Y2 of the changeover switch 34.
Operation of the spindle positioning apparatus shown in FIG. 1 will be described below.
The spindle positioning apparatus has two operational modes. One of the operational modes is a speed control mode in which the machining operation of the machine tool is effected at a constant speed. The other operational mode is a positioning mode in which the spindle 16 is brought to a specified target position. In the speed control mode, the common contact X0 is connected to the contact X1 in the changeover switch 2, and the speed command A1 and speed data QMV from a speed detector 24, indicating the rotational speed of the spindle motor 10, are supplied to the speed control processor 4. The speed control processor 4 then calculates the difference between the speed command A1 and the speed data signal QMV and applies the torque command B1 representative of such difference to the vector control processor 6. The vector control processor 6 calculates, from the phase data signal QMP, the slip and current vector phase of the spindle motor 10 dependent on the torque command B1, and applies three-phase current commands C1 through C3 to the three-phase PWM current control amplifier 8. The three-phase PWM current control amplifier 8 amplifies the power of the three-phase current commands C1 through C3 and supplies a driving current D1 to the spindle motor 10. The rotative power from the spindle motor 10 is transmitted through the speed reducer gear train in the gear box 14 to the spindle 16 to rotate the same at the specified speed command A1.
When the spindle 16 is to be positioned under the above condition, the positioning mode is selected to apply the main positioning command S1 to the flip-flop 32 and the changeover switch 2 and also to apply the positioning command PC1 to the subtracter 30. At this time, the low-speed command signal S1 is also delivered to the changeover switch 34. The command contact Y0 is connected to the contact Y1 in the changeover switch 34, and the common contact X0 is connected to the contact X2 in the changeover switch 2.
In the positioning mode, the spindle motor 10 is initially rotated at a low speed according to the low-speed command signal L1 until the original position of the position coder 20 is detected. When the original position of the position coder 20 is confirmed by the zero setting circuit 28, the flip-flop 32 issues a set signal SS to the changeover switch 34 to connect the common contact Y0 to the cntact Y2, whereupon a speed command A0 is delivered via the changeover switches 34, 2 to the speed control processor 4. In the event that the position command signal PC1 and the positional data QFP indicative of the position of the spindle 16 coincide with each other, the spindle motor 10 is stopped, completing the positioning of the spindle 16.
With the spindle positioning apparatus of the above construction, there is a large detection timing difference due to backlash and lost motion between the pulse generator 12 coupled to the spindle motor 10 and the position coder 20 coupled to the spindle 16. Since such a detection timing difference is not compensated for, the positioning accuracy is low, and the force for locking the spindle in the specified position is relative small. In case an increment-type encoder is employed as the position coder 20, when the apparatus changes from the speed control mode to the positioning mode, the positioning process has to be started after rotating the spindle through one revolution or more in order to confirm the original position of the increment-type encoder, resulting in a large time loss. Such a time loss can be reduced by using an absolute-type encoder as the position coder 20, but the apparatus with an absolute-type encoder is expensive.